package com.lzy.mall.order.service;


import com.lzy.mall.common.to.mq.SeckillOrderTo;
import com.lzy.mall.common.utils.PageUtils;
import com.lzy.mall.order.entity.OmsOrder;
import com.lzy.mall.order.vo.*;

import java.util.Map;

/**
 * 订单(OmsOrder)表服务接口
 *
 * @author lzy
 * @since 2021-08-25 11:22:37
 */
public interface OmsOrderService {

    OrderConfirmVo confirmOrder();

    SubmitOrderResponseVo submitOrder(OrderSubmitVo vo);

    OmsOrder getOrderBySn(String orderSn);

    void closeOrder(OmsOrder order);

    /**
     * 获取当前订单的支付信息
     */
    PayVo getOrderPay(String orderSn);

    PageUtils queryPageWithItem(Long pageNum);

    String handlePayResult(PayAsyncVo vo);

    /**
     * 创建秒杀单的详细信息
     * @param seckillOrderTo
     */
    void createSeckillOrder(SeckillOrderTo seckillOrderTo);
}
